﻿<span style='font-size:11px; color:#000000; background:#ffffff; '><pre>
<span style='color:#800000; font-weight:bold; '>Protected</span> <span style='color:#800000; font-weight:bold; '>Sub</span> convertToPdfButton_Click<span style='color:#808030; '>(</span><span style='color:#800000; font-weight:bold; '>ByVal</span> sender <span style='color:#800000; font-weight:bold; '>As</span> <span style='color:#800000; font-weight:bold; '>Object</span><span style='color:#808030; '>,</span> <span style='color:#800000; font-weight:bold; '>ByVal</span> e <span style='color:#800000; font-weight:bold; '>As</span> EventArgs<span style='color:#808030; '>)</span>
    <span style='color:#696969; '>' Create a HTML to PDF converter object with default settings</span>
    <span style='color:#800000; font-weight:bold; '>Dim</span> htmlToPdfConverter <span style='color:#800000; font-weight:bold; '>As</span> <span style='color:#800000; font-weight:bold; '>New</span> HtmlToPdfConverter<span style='color:#808030; '>(</span><span style='color:#808030; '>)</span>

    <span style='color:#696969; '>' Set license key received after purchase to use the converter in licensed mode</span>
    <span style='color:#696969; '>' Leave it not set to use the converter in demo mode</span>
    htmlToPdfConverter<span style='color:#008c00; '>.</span>LicenseKey <span style='color:#808030; '>=</span> <span style='color:#0000e6; '>"4W9+bn19bn5ue2B+bn1/YH98YHd3d3c="</span>

    <span style='color:#696969; '>' Set an adddional delay in seconds to wait for JavaScript or AJAX calls after page load completed</span>
    <span style='color:#696969; '>' Set this property to 0 if you don't need to wait for such asynchcronous operations to finish</span>
    htmlToPdfConverter<span style='color:#008c00; '>.</span>ConversionDelay <span style='color:#808030; '>=</span> <span style='color:#008c00; '>2</span>

    <span style='color:#696969; '>' Enable footer in the generated PDF document</span>
    htmlToPdfConverter<span style='color:#008c00; '>.</span>PdfDocumentOptions<span style='color:#008c00; '>.</span>ShowFooter <span style='color:#808030; '>=</span> <span style='color:#0f4d75; '>True</span>

    <span style='color:#696969; '>' Optionally add a space between footer and the page body</span>
    <span style='color:#696969; '>' Leave this option not set for no spacing</span>
    htmlToPdfConverter<span style='color:#008c00; '>.</span>PdfDocumentOptions<span style='color:#008c00; '>.</span>BottomSpacing <span style='color:#808030; '>=</span> <span style='color:#800000; font-weight:bold; '>Single</span><span style='color:#008c00; '>.</span>Parse<span style='color:#808030; '>(</span>footerSpacingTextBox<span style='color:#008c00; '>.</span><span style='color:#800000; font-weight:bold; '>Text</span><span style='color:#808030; '>)</span>

    <span style='color:#696969; '>' Set the footer height in points</span>
    htmlToPdfConverter<span style='color:#008c00; '>.</span>PdfFooterOptions<span style='color:#008c00; '>.</span>FooterHeight <span style='color:#808030; '>=</span> <span style='color:#008c00; '>50</span>

    <span style='color:#696969; '>' ----- Add HTML with Page Numbering to Footer -----</span>

    <span style='color:#696969; '>' Create a variable HTML element with page numbering</span>
    <span style='color:#800000; font-weight:bold; '>Dim</span> htmlStringWithPageNumbers <span style='color:#800000; font-weight:bold; '>As</span> <span style='color:#800000; font-weight:bold; '>String</span> <span style='color:#808030; '>=</span> htmlWithPageNumbersTextBox<span style='color:#008c00; '>.</span><span style='color:#800000; font-weight:bold; '>Text</span>
    <span style='color:#800000; font-weight:bold; '>Dim</span> baseUrl <span style='color:#800000; font-weight:bold; '>As</span> <span style='color:#800000; font-weight:bold; '>String</span> <span style='color:#808030; '>=</span> baseUrlTextBox<span style='color:#008c00; '>.</span><span style='color:#800000; font-weight:bold; '>Text</span>
    <span style='color:#800000; font-weight:bold; '>Dim</span> footerHtmlWithPageNumbers <span style='color:#800000; font-weight:bold; '>As</span> <span style='color:#800000; font-weight:bold; '>New</span> HtmlToPdfVariableElement<span style='color:#808030; '>(</span>htmlStringWithPageNumbers<span style='color:#808030; '>,</span> baseUrl<span style='color:#808030; '>)</span>

    <span style='color:#696969; '>' Set the HTML element to fit the container height</span>
    footerHtmlWithPageNumbers<span style='color:#008c00; '>.</span>FitHeight <span style='color:#808030; '>=</span> <span style='color:#0f4d75; '>True</span>

    <span style='color:#696969; '>' Add variable HTML element with page numbering to footer</span>
    htmlToPdfConverter<span style='color:#008c00; '>.</span>PdfFooterOptions<span style='color:#008c00; '>.</span>AddElement<span style='color:#808030; '>(</span>footerHtmlWithPageNumbers<span style='color:#808030; '>)</span>

    <span style='color:#696969; '>' Optionally draw a line at the top of the footer</span>
    <span style='color:#800000; font-weight:bold; '>If</span> drawFooterLineCheckBox<span style='color:#008c00; '>.</span>Checked <span style='color:#800000; font-weight:bold; '>Then</span>
        <span style='color:#696969; '>' Calculate the footer width based on PDF page size and margins</span>
        <span style='color:#800000; font-weight:bold; '>Dim</span> footerWidth <span style='color:#800000; font-weight:bold; '>As</span> <span style='color:#800000; font-weight:bold; '>Single</span> <span style='color:#808030; '>=</span> htmlToPdfConverter<span style='color:#008c00; '>.</span>PdfDocumentOptions<span style='color:#008c00; '>.</span>PdfPageSize<span style='color:#008c00; '>.</span>Width <span style='color:#808030; '>-</span> htmlToPdfConverter<span style='color:#008c00; '>.</span>PdfDocumentOptions<span style='color:#008c00; '>.</span>LeftMargin <span style='color:#808030; '>-</span> htmlToPdfConverter<span style='color:#008c00; '>.</span>PdfDocumentOptions<span style='color:#008c00; '>.</span>RightMargin

        <span style='color:#696969; '>' Create a line element for the top of the footer</span>
        <span style='color:#800000; font-weight:bold; '>Dim</span> footerLine <span style='color:#800000; font-weight:bold; '>As</span> <span style='color:#800000; font-weight:bold; '>New</span> LineElement<span style='color:#808030; '>(</span><span style='color:#008c00; '>0</span><span style='color:#808030; '>,</span> <span style='color:#008c00; '>0</span><span style='color:#808030; '>,</span> footerWidth<span style='color:#808030; '>,</span> <span style='color:#008c00; '>0</span><span style='color:#808030; '>)</span>

        <span style='color:#696969; '>' Set line color</span>
        footerLine<span style='color:#008c00; '>.</span>ForeColor <span style='color:#808030; '>=</span> Color<span style='color:#008c00; '>.</span>Gray

        <span style='color:#696969; '>' Add line element to the bottom of the footer</span>
        htmlToPdfConverter<span style='color:#008c00; '>.</span>PdfFooterOptions<span style='color:#008c00; '>.</span>AddElement<span style='color:#808030; '>(</span>footerLine<span style='color:#808030; '>)</span>
    <span style='color:#800000; font-weight:bold; '>End</span> <span style='color:#800000; font-weight:bold; '>If</span>

    <span style='color:#696969; '>' Convert the HTML page to a PDF document in a memory buffer</span>
    <span style='color:#800000; font-weight:bold; '>Dim</span> outPdfBuffer<span style='color:#808030; '>(</span><span style='color:#808030; '>)</span> <span style='color:#800000; font-weight:bold; '>As</span> <span style='color:#800000; font-weight:bold; '>Byte</span> <span style='color:#808030; '>=</span> htmlToPdfConverter<span style='color:#008c00; '>.</span>ConvertUrl<span style='color:#808030; '>(</span>urlTextBox<span style='color:#008c00; '>.</span><span style='color:#800000; font-weight:bold; '>Text</span><span style='color:#808030; '>)</span>

    <span style='color:#696969; '>' Send the PDF as response to browser</span>

    <span style='color:#696969; '>' Set response content type</span>
    Response<span style='color:#008c00; '>.</span>AddHeader<span style='color:#808030; '>(</span><span style='color:#0000e6; '>"Content-Type"</span><span style='color:#808030; '>,</span> <span style='color:#0000e6; '>"application/pdf"</span><span style='color:#808030; '>)</span>

    <span style='color:#696969; '>' Instruct the browser to open the PDF file as an attachment or inline</span>
    Response<span style='color:#008c00; '>.</span>AddHeader<span style='color:#808030; '>(</span><span style='color:#0000e6; '>"Content-Disposition"</span><span style='color:#808030; '>,</span> <span style='color:#800000; font-weight:bold; '>String</span><span style='color:#008c00; '>.</span><span style='color:#800000; font-weight:bold; '>Format</span><span style='color:#808030; '>(</span><span style='color:#0000e6; '>"attachment; filename=Page_Numbers_in_HTML.pdf; size={0}"</span><span style='color:#808030; '>,</span> outPdfBuffer<span style='color:#008c00; '>.</span>Length<span style='color:#008c00; '>.</span>ToString<span style='color:#808030; '>(</span><span style='color:#808030; '>)</span><span style='color:#808030; '>)</span><span style='color:#808030; '>)</span>

    <span style='color:#696969; '>' Write the PDF document buffer to HTTP response</span>
    Response<span style='color:#008c00; '>.</span>BinaryWrite<span style='color:#808030; '>(</span>outPdfBuffer<span style='color:#808030; '>)</span>

    <span style='color:#696969; '>' End the HTTP response and stop the current page processing</span>
    Response<span style='color:#008c00; '>.</span><span style='color:#800000; font-weight:bold; '>End</span><span style='color:#808030; '>(</span><span style='color:#808030; '>)</span>
<span style='color:#800000; font-weight:bold; '>End</span> <span style='color:#800000; font-weight:bold; '>Sub</span>
</pre>
</span>